/**
 * base.h
 * 一些共用代码片段
 * 
 * 竹影半墙
 * 2023.08
 */
#ifndef BASE_H
#define BASE_H

#include <unistd.h>
#include <pthread.h>

#include <inttypes.h>
#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
#include <stddef.h>
#include <assert.h>
#include <math.h>
#include <time.h>

#ifndef unlikely
#define unlikely __glibc_unlikely
#endif

#undef  startof
#define startof(ptr, type, mbr) \
    ({(type*)( (char*)(ptr) - offsetof(type, mbr) );})

#endif